package com.nfdw.project.service.impl;

import com.nfdw.project.core.AbstractService;
import com.nfdw.project.dao.ElectricEnergySaleUsersProfitAndLoseInfoMapper;
import com.nfdw.project.dto.SaleUsersProfitAndLoseInfoDto;
import com.nfdw.project.model.ElectricEnergySaleUsersProfitAndLoseInfo;
import com.nfdw.project.service.ElectricEnergySaleUsersProfitAndLoseInfoService;
import com.nfdw.project.vo.SaleUsersProfitAndLoseInfoVo;
import com.nfdw.project.vo.TradePowerAndIncomeInfoVo;
import com.nfdw.project.vo.TradeProfitAndLossInfoVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import javax.annotation.Resource;
import java.util.List;

@Service
@Transactional
public class ElectricEnergySaleUsersProfitAndLoseInfoServiceImpl extends AbstractService<ElectricEnergySaleUsersProfitAndLoseInfo> implements ElectricEnergySaleUsersProfitAndLoseInfoService {

    @Resource
    private ElectricEnergySaleUsersProfitAndLoseInfoMapper electricEnergySaleUsersProfitAndLoseInfoMapper;

    @Override
    public SaleUsersProfitAndLoseInfoVo tradeSettleInfo(SaleUsersProfitAndLoseInfoDto param) {
        return electricEnergySaleUsersProfitAndLoseInfoMapper.tradeSettleInfo(param);
    }

    @Override
    public List<TradePowerAndIncomeInfoVo.TradePowerVo> tradePowerInfo(SaleUsersProfitAndLoseInfoDto param) {
        return electricEnergySaleUsersProfitAndLoseInfoMapper.tradePowerInfo(param);
    }

    @Override
    public List<TradePowerAndIncomeInfoVo.KilowattIncomeVo> kilowattIncomeInfo(SaleUsersProfitAndLoseInfoDto param) {
        return electricEnergySaleUsersProfitAndLoseInfoMapper.kilowattIncomeInfo(param);
    }

    @Override
    public List<TradePowerAndIncomeInfoVo.KilowattIncomePercentVo> kilowattIncomePercent(SaleUsersProfitAndLoseInfoDto param) {
        return electricEnergySaleUsersProfitAndLoseInfoMapper.kilowattIncomePercent(param);
    }

    @Override
    public List<TradeProfitAndLossInfoVo.TradeProfitVo> tradeProfit(SaleUsersProfitAndLoseInfoDto param) {
        return electricEnergySaleUsersProfitAndLoseInfoMapper.tradeProfit(param);
    }

    @Override
    public List<TradeProfitAndLossInfoVo.TradeLossVo> tradeLoss(SaleUsersProfitAndLoseInfoDto param) {
        return electricEnergySaleUsersProfitAndLoseInfoMapper.tradeLoss(param);
    }
}
